干货 | 优秀架构师必须了解的6大方面30条设计原则
架构的话题,之前就讲过许多,比如:
阿里云技术专家分享:现代 IM 系统中消息推送和存储架构的实现
没看过的可以先收藏本篇,后续再慢慢消化上面的。今天,我再总结一下,优秀架构师必须了解的6大方面30条设计原则,供大家参考以及思考。
众所周知,架构师的角色,更偏向于策划、而非指挥,塑造、而非支配,其存在的意义,在于引导大家讨论、而非自己主宰一切。
但是,具体应该如何执行呢?本文作者整理了 30 个公认的架构原则,来帮助大家解决此问题。也许有的原则,你从未听说,但你看完就能快速学会。
相信你学会了,工作起来也会事半功倍,或许还可帮你避免很多无用的加班!
在 WSO2,我参与架构评审的时间已长达八年之久。WSO2 的产品非常丰富,比如 WSO2 ESB 、WSO2 API Manager 以及 WSO2 SP 都人尽皆知。在过去八年中,我们对许多产品和功能进行了讨论、设计、改进和重新设计。
我们在设计软件的过程中,把握的一个关键点是:软件架构并非由架构师负责设计。我们的架构不是由架构师制定,然后交给其他人来实施。
相反,架构的设计任务由真正编写代码的团队负责。架构师负责对工程师设计的架构进行修复、完策划和改进。我们的架构团队是指导员和把关人,而非独裁者。
在短期内,由一位架构师来制定架构的确既快捷又实惠。但是,从长远来看,我们会组建一个团队,让他们自己不断思考、改善架构,并从他们的错误中来提升自己。
当我们专注于团队时,他们自然会随着时间的推移而变得更好。架构团队的首要任务是:尽可能保证架构容易执行。此外,架构评审也存在缺陷。
就像 Paul (@pzfreo)描述的架构评审那样:架构师参与进来,听一会,发表一点评论然后就走了。作为一名架构师,你对架构发表自己的看法和意见无可厚非。但是,如果你不够投入和细心,你的意见可能会让团队感到困惑,团队就无法确定正确的做法到底是什么。
接下来我会将30个架构原则一一列出,其中一些原则是众所周知的,而有些则源于我的个人经验和心血。
推荐阅读:
阿里云技术专家分享:现代 IM 系统中消息推送和存储架构的实现
一、基本原则
二、功能选择
三、服务端设计和并发
四、分布式系统
五、用户体验
六、难点
总结
———— e n d ————
快年底了,师长为大家准备了三份面试宝典:
《java面试宝典5.0》
《350道Java面试题:整理自100+公司》
《资深java面试宝典-视频版》
分别适用于初中级,中高级,以及资深级工程师的面试复习。
内容包含java基础、javaweb、各个性能优化、JVM、锁、高并发、反射、Spring原理、微服务、Zookeeper、数据库、数据结构、限流熔断降级等等。
获取方式:点“在看”,V信关注师长的小号:编程最前线并回复 面试 领取,更多精彩陆续奉上。
一、初中级《java面试宝典5.0》,对标8-13K
二、中高级《350道Java面试题:整理自100+公司》,对标12-20K
三、资深《java面试突击-视频版》,对标20K+
点在看好不好,喵~